home *** CD-ROM | disk | FTP | other *** search
/ SPACE 1 / SPACE - Library 1 - Volume 1.iso / program / 441 / aessrc12 / aesmenu1.s < prev    next >
Text File  |  1990-11-23  |  2KB  |  61 lines

  1.  
  2. ;*========================================================================
  3. ;*
  4. ;* AESFAST Public Domain GEM bindings.
  5. ;*
  6. ;*========================================================================
  7.  
  8.           .include  "aesfast.sh"
  9.           
  10. ;*************************************************************************
  11. ;*
  12. ;* Menu Manager routines 1 of 2.
  13. ;*
  14. ;*************************************************************************
  15.  
  16. ;-------------------------------------------------------------------------
  17. ; menu_bar
  18. ; menu_icheck
  19. ; menu_ienable
  20. ; menu_tnormal
  21. ;-------------------------------------------------------------------------
  22.  
  23. _menu_bar::
  24.           AControl  30,1,1,1
  25.           bra.s     menu_do
  26. _menu_icheck::
  27.           AControl  31,2,1,1
  28.           bra.s     menu_do
  29. _menu_ienable::
  30.           AControl  32,2,1,1
  31.           bra.s     menu_do
  32. _menu_tnormal::
  33.           AControl  33,2,1,1
  34. menu_do:
  35.           .cargs    #4,.ptree.l,.intin
  36.           lea       .intin(sp),a1       ; -> intin
  37.           lea       .ptree(sp),a0       ; -> addrin
  38.           ACall     RET2USER
  39.           
  40. ;-------------------------------------------------------------------------
  41. ; menu_text
  42. ;-------------------------------------------------------------------------
  43.  
  44. _menu_text::
  45.           .cargs    #8,.ptree.l,.item,.ptext.l
  46.           link      a6,#-2
  47.           AControl  34,1,1,2
  48.           move.l    .ptext(a6),-(sp)    ; The 2 pointers are not contiguous
  49.           move.l    .ptree(a6),-(sp)    ; on entry call stack, make them so.
  50.           moveq.l   #-2,d2              ;  = intout
  51.           move.l    sp,a0               ; -> addrin (we just built it)
  52.           lea       .item(a6),a1        ; -> intin
  53.           ACall     RET2HERE
  54.  
  55.           move.w    -2(a6),d0
  56.           unlk      a6
  57.           rts
  58.           
  59. ;         end of code
  60.  
  61.